//**************************************************************************************************************
// FILE: Types.hpp
//
// DESCRIPTION
// Useful type definitions.
//
// COURSE
// CSE220 Programming for Computer Engineering, Fall 2011
//
// AUTHOR INFORMATION
// Group 2
// Tyler Williams
// Lauren Walker
// Cameron Stewart
// Fatimah Alowah
//
// MODIFICATION HISTORY:
// -------------------------------------------------------------------------------------------------------------
// 21 Nov 2011 [KRB] Initial revision.
//**************************************************************************************************************
#ifndef TYPES_HPP
#define TYPES_HPP

typedef unsigned char       uchar;
typedef unsigned int        uint;
typedef unsigned long       ulong;
typedef unsigned short      ushort;
typedef long double         ldouble;

#ifdef _32_BIT_
    typedef char            int8;
    typedef short           int16;
    typedef int             int32;
    typedef uchar           uint8;
    typedef ushort          uint16;
    typedef uint            uint32;
#elif _64_BIT_
    // If you have a 64-bit cpu, then you will have to figure out what these should be equivalent to.
    typedef char             int8;
    typedef short            int16;
    typedef int              int32;
    typedef uchar            uint8;
    typedef ushort           uint16;
    typedef uint             uint32;
#endif

typedef uint32 Address;
typedef uint8  Byte;
typedef uint32 Word;

#endif

